import axios from 'axios'

//引入加载组件
import { Loading } from 'element-ui';

export function request(config) {
    //加载效果
    let loadingInstance1 = Loading.service({
        fullscreen: true,
        text: '正在请求'
    });
    //创建axios实例
    let instance = axios.create({
        baseURL: 'https://www.fastmock.site/mock/ed88e2895d477278a0754bbb42321054/vue',
        timeout: 20000
    })

    //请求拦截和响应拦截
    instance.interceptors.request.use(config => {
        // console.log(config);
        //添加token，除了登录请求，其他请求都要添加token认证
        if (sessionStorage.getItem('token')) {//Authorzition  --授权
            config.headers.Authorzition = sessionStorage.getItem('token')
        }
        return config;
    }, err => {
        // console.log(err);
    })
    instance.interceptors.response.use(res => {
        // console.log(res.data);
        //关闭加载效果
        loadingInstance1.close();
        return res.data;
    }, err => {
        // console.log(err);
    })
    //axios.create的返回值是一个promise对象！
    return instance(config);
}
